package vista;
import java.awt.BorderLayout;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.MouseEvent;
import java.awt.event.MouseListener;

import javax.swing.ComboBoxModel;
import javax.swing.DefaultComboBoxModel;
import javax.swing.ImageIcon;
import javax.swing.JComboBox;
import javax.swing.JLabel;
import javax.swing.JPanel;
import javax.swing.SwingConstants;
import javax.swing.SwingUtilities;
import javax.swing.WindowConstants;
import javax.swing.border.LineBorder;

import bean.BtSacfre;
import bean.JTextFieldValidator;
import bean.TablaPlus;
import bean.TxtEscribirLetrasEspaciosNumeros;
import bean.TxtEscribirSoloNumeros;
import controlador.ControladorGestionarPago;


/**
* This code was edited or generated using CloudGarden's Jigloo
* SWT/Swing GUI Builder, which is free for non-commercial
* use. If Jigloo is being used commercially (ie, by a corporation,
* company or business for any purpose whatever) then you
* should purchase a license for each developer using Jigloo.
* Please visit www.cloudgarden.com for details.
* Use of Jigloo implies acceptance of these licensing terms.
* A COMMERCIAL LICENSE HAS NOT BEEN PURCHASED FOR
* THIS MACHINE, SO JIGLOO OR THIS CODE CANNOT BE USED
* LEGALLY FOR ANY CORPORATE OR COMMERCIAL PURPOSE.
*/
public class frmGestionarPago extends javax.swing.JFrame {
	private JPanel pndatos;
	private JPanel pnpago;
	private JLabel lblidentificacion;
	private JComboBox cmbidentificacion;
	private JLabel lblapellido;
	private TxtEscribirSoloNumeros txtnumero;
	private JLabel lblnombre;
	private JLabel lblnombre2;
	private JLabel lblapellido2;
	private BtSacfre btregistrar;
	private JLabel lblcuenta_pago;
	private JLabel lblmontodeuda_delcliente;
	private JLabel lbldeuda_delcliente;
	private JComboBox cmbcuenta_pagar;
	private JLabel lblcuenta;
	private TxtEscribirLetrasEspaciosNumeros txtconcepto;
	private JTextFieldValidator txtmonto;
	private JLabel lblmonto;
	private JLabel lblconcepto;
	private BtSacfre btcancelar;
	private JLabel lbldeudacliente;
	private JLabel lblmontodeuda;
	private BtSacfre btbuscar;
	private JLabel lbltipopago;
	private JComboBox cmbtipopago;
	private TablaPlus tbcuentas;
	private ControladorGestionarPago controlador;
	/**
	* Auto-generated main method to display this JFrame
	*/
	public static void main(String[] args) {
		SwingUtilities.invokeLater(new Runnable() {
			public void run() {
//			frmGestionarNuevoPago inst = new frmGestionarNuevoPago();
//			inst.setLocationRelativeTo(null);
//			inst.setVisible(true);
			}
		});
	}
	
	public frmGestionarPago(ControladorGestionarPago controlador) {
		super();
		initGUI();
		AgregarEsccuchadores();
		this.controlador=controlador;
	}

	private void initGUI() {
		try {
			setDefaultCloseOperation(WindowConstants.DISPOSE_ON_CLOSE);
			this.setTitle("SACFRE/ Gestionar Pago");
			this.setFont(new java.awt.Font("FreeSerif",1,16));
			this.setResizable(false);
			{
				pndatos = new JPanel();
				getContentPane().add(pndatos, BorderLayout.CENTER);
				pndatos.setLayout(null);
				pndatos.setPreferredSize(new java.awt.Dimension(889, 540));
				pndatos.setFont(new java.awt.Font("FreeSerif",1,16));
				pndatos.setBackground(new java.awt.Color(239,171,183));
				{
					pnpago = new JPanel();
					pndatos.add(pnpago);
					pnpago.setBounds(12, 12, 847, 515);
					pnpago.setBackground(new java.awt.Color(255,219,223));
					pnpago.setLayout(null);
					pnpago.setBorder(new LineBorder(new java.awt.Color(0,0,0), 1, false));
					{
						lblnombre = new JLabel();
						pnpago.add(lblnombre);
						lblnombre.setText("Nombres:");
						lblnombre.setBounds(1, 68, 130, 31);
						lblnombre.setFont(new java.awt.Font("FreeSerif",1,16));
						lblnombre.setHorizontalAlignment(SwingConstants.RIGHT);
					}
					{
						lblidentificacion = new JLabel();
						pnpago.add(lblidentificacion);
						lblidentificacion.setText("Identificacion:");
						lblidentificacion.setBounds(1, 12, 130, 31);
						lblidentificacion.setFont(new java.awt.Font("FreeSerif",1,16));
						lblidentificacion.setHorizontalAlignment(SwingConstants.RIGHT);
					}
					{
						String[] columnas = { "ID","Cuentas" , "Total(bsf)" };
						tbcuentas = new TablaPlus();
						tbcuentas.setBounds(444, 47, 382, 282);
						pnpago.add(tbcuentas);
						tbcuentas.setTablaPlus(columnas);
						tbcuentas.setBorder(new LineBorder(new java.awt.Color(0,0,0), 1, false));
						tbcuentas.setEnabled(false);
						tbcuentas.setFont(new java.awt.Font("FreeSerif",1,14));
					}
					{
						ComboBoxModel cmbidentificacionModel = new DefaultComboBoxModel(new String[] { "V-", "J-", "E-" });
						cmbidentificacion = new JComboBox();
						pnpago.add(cmbidentificacion);
						cmbidentificacion.setModel(cmbidentificacionModel);
						cmbidentificacion.setBounds(137, 11, 44, 30);
						cmbidentificacion.setBackground(new java.awt.Color(247,218,223));
					}
					{
						txtnumero = new TxtEscribirSoloNumeros();
						pnpago.add(txtnumero);
						txtnumero.setBounds(193, 10, 193, 35);
					}
					{
						btbuscar = new BtSacfre();
						pnpago.add(btbuscar);
						btbuscar.setBounds(391, 11, 30, 33);
						btbuscar.setIcon(new ImageIcon(getClass().getClassLoader().getResource("Iconos/search_business_user.png")));
					}
					{
						lblnombre2 = new JLabel();
						pnpago.add(lblnombre2);
						lblnombre2.setBounds(137, 64, 284, 35);
						lblnombre2.setBorder(new LineBorder(new java.awt.Color(0,0,0), 1, false));
						lblnombre2.setFont(new java.awt.Font("FreeSerif",1,16));
					}
					{
						lblapellido = new JLabel();
						pnpago.add(lblapellido);
						lblapellido.setText("Apellidos:");
						lblapellido.setBounds(12, 119, 119, 34);
						lblapellido.setFont(new java.awt.Font("FreeSerif",1,16));
						lblapellido.setHorizontalAlignment(SwingConstants.RIGHT);
					}
					{
						lblapellido2 = new JLabel();
						pnpago.add(lblapellido2);
						lblapellido2.setBounds(137, 118, 284, 35);
						lblapellido2.setBorder(new LineBorder(new java.awt.Color(0,0,0), 1, false));
						lblapellido2.setFont(new java.awt.Font("FreeSerif",1,16));
					}
					{
						lblmontodeuda = new JLabel();
						pnpago.add(lblmontodeuda);
						lblmontodeuda.setText("0.0 Bsf");
						lblmontodeuda.setFont(new java.awt.Font("FreeSerif",1,36));
						lblmontodeuda.setBounds(379, 468, 416, 34);
					}
					{
						lbldeudacliente = new JLabel();
						pnpago.add(lbldeudacliente);
						lbldeudacliente.setText("Deuda con el Cliente:");
						lbldeudacliente.setFont(new java.awt.Font("FreeSerif",1,36));
						lbldeudacliente.setBounds(1, 464, 366, 42);
						lbldeudacliente.setHorizontalAlignment(SwingConstants.RIGHT);
					}
					{
						lbltipopago = new JLabel();
						pnpago.add(lbltipopago);
						lbltipopago.setText("Tipo de Pago:");
						lbltipopago.setBounds(0, 171, 131, 35);
						lbltipopago.setFont(new java.awt.Font("FreeSerif",1,16));
						lbltipopago.setHorizontalAlignment(SwingConstants.RIGHT);
					}
					{
						cmbtipopago = new JComboBox();
						pnpago.add(cmbtipopago);
						cmbtipopago.setBackground(new java.awt.Color(247,218,223));
						cmbtipopago.setBounds(135, 170, 289, 38);
						cmbtipopago.setFont(new java.awt.Font("FreeSerif",1,16));
						cmbtipopago.setEnabled(false);
					}
					{
						lblconcepto = new JLabel();
						pnpago.add(lblconcepto);
						lblconcepto.setText("Concepto:");
						lblconcepto.setBounds(0, 355, 130, 32);
						lblconcepto.setFont(new java.awt.Font("FreeSerif",1,16));
						lblconcepto.setHorizontalAlignment(SwingConstants.RIGHT);
					}
					{
						lblmonto = new JLabel();
						pnpago.add(lblmonto);
						lblmonto.setText("Monto(bsf):");
						lblmonto.setFont(new java.awt.Font("FreeSerif",1,16));
						lblmonto.setBounds(0, 289, 130, 40);
						lblmonto.setHorizontalAlignment(SwingConstants.RIGHT);
					}
					{
						txtmonto = new JTextFieldValidator(JTextFieldValidator.NUMEROS_DECIMALES);
						pnpago.add(txtmonto);
						txtmonto.setMaximaLongitud(8);
						txtmonto.setBorder(new LineBorder(new java.awt.Color(0,0,0),1,false));
						txtmonto.setBounds(134, 289, 291, 40);
						txtmonto.setFont(new java.awt.Font("FreeSerif",1,16));
					}
					{
						txtconcepto = new TxtEscribirLetrasEspaciosNumeros();
						pnpago.add(txtconcepto);
						txtconcepto.setBounds(134, 354, 692, 39);
					}
					{
						lblcuenta = new JLabel();
						pnpago.add(lblcuenta);
						lblcuenta.setText("Cuentas Descontables");
						lblcuenta.setBounds(569, 12, 183, 23);
						lblcuenta.setFont(new java.awt.Font("FreeSerif",1,16));
					}
					{
						lblcuenta_pago = new JLabel();
						pnpago.add(getLblcuenta_pago());
						lblcuenta_pago.setText("Cuenta a Pagar: ");
						lblcuenta_pago.setBounds(0, 241, 135, 23);
						lblcuenta_pago.setFont(new java.awt.Font("FreeSerif",1,16));
						lblcuenta_pago.setHorizontalAlignment(SwingConstants.RIGHT);
					}
					{
						cmbcuenta_pagar = new JComboBox();
						pnpago.add(getCmbcuenta_pagar());
						cmbcuenta_pagar.setBounds(135, 233, 290, 37);
						cmbcuenta_pagar.setEnabled(false);
					}
					{
						lbldeuda_delcliente = new JLabel();
						pnpago.add(lbldeuda_delcliente);
						lbldeuda_delcliente.setText("Deuda del Cliente:");
						lbldeuda_delcliente.setFont(new java.awt.Font("FreeSerif",1,36));
						lbldeuda_delcliente.setBounds(7, 422, 360, 34);
						lbldeuda_delcliente.setHorizontalAlignment(SwingConstants.RIGHT);
					}
					{
						lblmontodeuda_delcliente = new JLabel();
						pnpago.add(lblmontodeuda_delcliente);
						lblmontodeuda_delcliente.setText("0.0 Bs");
						lblmontodeuda_delcliente.setFont(new java.awt.Font("FreeSerif",1,36));
						lblmontodeuda_delcliente.setBounds(379, 422, 416, 34);
					}
				}
				{
					btcancelar = new BtSacfre();
					pndatos.add(btcancelar);
					btcancelar.setText("Cancelar");
					btcancelar.setIcon(new ImageIcon(getClass().getClassLoader().getResource("Iconos/delete.png")));
					btcancelar.setBounds(690, 533, 169, 58);
				}
				{
					btregistrar = new BtSacfre();
					pndatos.add(btregistrar);
					btregistrar.setText("Guardar");
					btregistrar.setIcon(new ImageIcon(getClass().getClassLoader().getResource("Iconos/save.png")));
					btregistrar.setBounds(509, 533, 169, 58);
				}
			}
			pack();
			this.setSize(874, 627);
		} catch (Exception e) {
		    //add your error handling code here
			e.printStackTrace();
		}
	}
	
	private void AgregarEsccuchadores(){
		ActionListener escuchador_click = new ActionListener() {
			public void actionPerformed(ActionEvent evento) {
				getControlador().procesarEvento(evento);
			}
		};
		getBtbuscar().addActionListener(escuchador_click);
		getBtcancelar().addActionListener(escuchador_click);
		getBtregistrar().addActionListener(escuchador_click);
		getCmbtipopago().addActionListener(escuchador_click);
		getCmbcuenta_pagar().addActionListener(escuchador_click);
		System.out.println("Escuchadores agregados");
	}

	public JPanel getPndatos() {
		return pndatos;
	}

	public JPanel getPnpago() {
		return pnpago;
	}

	public JLabel getLblidentificacion() {
		return lblidentificacion;
	}

	public JComboBox getCmbidentificacion() {
		return cmbidentificacion;
	}

	public JLabel getLblapellido() {
		return lblapellido;
	}

	public TxtEscribirSoloNumeros getTxtnumero() {
		return txtnumero;
	}

	public JLabel getLblnombre() {
		return lblnombre;
	}

	public JLabel getLblnombre2() {
		return lblnombre2;
	}

	public JLabel getLblapellido2() {
		return lblapellido2;
	}

	public BtSacfre getBtregistrar() {
		return btregistrar;
	}

	public JLabel getLblcuenta() {
		return lblcuenta;
	}

	public TxtEscribirLetrasEspaciosNumeros getTxtconcepto() {
		return txtconcepto;
	}

	public JTextFieldValidator getTxtmonto() {
		return txtmonto;
	}

	public JLabel getLblmonto() {
		return lblmonto;
	}

	public JLabel getLblconcepto() {
		return lblconcepto;
	}

	public BtSacfre getBtcancelar() {
		return btcancelar;
	}

	public JLabel getLbldeudacliente() {
		return lbldeudacliente;
	}

	public JLabel getLblmontodeuda() {
		return lblmontodeuda;
	}

	public BtSacfre getBtbuscar() {
		return btbuscar;
	}

	public JLabel getLbltipopago() {
		return lbltipopago;
	}

	public JComboBox getCmbtipopago() {
		return cmbtipopago;
	}

	public TablaPlus getTbcuentas() {
		return tbcuentas;
	}
	
	public JLabel getLblcuenta_pago() {
		return lblcuenta_pago;
	}
	
	public JComboBox getCmbcuenta_pagar() {
		return cmbcuenta_pagar;
	}

	public ControladorGestionarPago getControlador() {
		return controlador;
	}

	public JLabel getLblmontodeuda_delcliente() {
		return lblmontodeuda_delcliente;
	}

	public JLabel getLbldeuda_delcliente() {
		return lbldeuda_delcliente;
	}
}
